1 <!DOCTYPE html PUBLIC
"-//W3C//DTD HTML 4.0 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd"><html>
3 <META http-equiv=
"Content-Type" content=
"text/html; charset=iso-8859-1">
4 <link rel=
"stylesheet" type=
"text/css" href=
"../refdoc.css">
5 <title>Namespace: System.Reflection.Emit
</title>
8 <h2>Namespace: System.Reflection.Emit
</h2>
11 <p> The Reflection Emit namespace contains classes that allow a compiler or tool to emit metadata and Microsoft intermediate language (MSIL) and optionally generate a PE file on disk. The primary clients of these classes are script engines and compilers.
</p>
14 <h3>Members of System.Reflection.Emit Namespace
</h3><b>Classes
</b><dl>
16 <table border=
"1" width=
"90%" style=
"border-collapse: collapse">
18 <th bgcolor=
"#C0C0C0">Class
</th>
19 <th bgcolor=
"#C0C0C0">
24 <td width=
"30%"><a href=
"types/AssemblyBuilder.html">class AssemblyBuilder
</a></td>
25 <td width=
"60%"> Defines and represents a dynamic assembly.
29 <td width=
"30%"><a href=
"types/ConstructorBuilder.html">class ConstructorBuilder
</a></td>
30 <td width=
"60%"> Defines and represents a constructor of a dynamic class.
34 <td width=
"30%"><a href=
"types/CustomAttributeBuilder.html">class CustomAttributeBuilder
</a></td>
35 <td width=
"60%"> Helps build custom attributes.
39 <td width=
"30%"><a href=
"types/EnumBuilder.html">class EnumBuilder
</a></td>
40 <td width=
"60%"> Describes and represents an enumeration type.
44 <td width=
"30%"><a href=
"types/EventBuilder.html">class EventBuilder
</a></td>
45 <td width=
"60%"> Defines events for a class.
49 <td width=
"30%"><a href=
"types/FieldBuilder.html">class FieldBuilder
</a></td>
50 <td width=
"60%"> Defines and represents a field. This class cannot be inherited.
54 <td width=
"30%"><a href=
"types/ILGenerator.html">class ILGenerator
</a></td>
55 <td width=
"60%"> Generates Microsoft intermediate language (MSIL) instructions.
59 <td width=
"30%"><a href=
"types/LocalBuilder.html">class LocalBuilder
</a></td>
60 <td width=
"60%"> Represents a local variable within a method or constructor.
64 <td width=
"30%"><a href=
"types/MethodBuilder.html">class MethodBuilder
</a></td>
65 <td width=
"60%"> Defines and represents a method (or constructor) on a dynamic class.
69 <td width=
"30%"><a href=
"types/MethodRental.html">class MethodRental
</a></td>
70 <td width=
"60%"> Provides a fast way to swap method body implementation given a method of a class.
74 <td width=
"30%"><a href=
"types/ModuleBuilder.html">class ModuleBuilder
</a></td>
75 <td width=
"60%"> Defines and represents a module. Get an instance of ModuleBuilder by calling
<a href=
"#DefineDynamicModule(System.String)">AssemblyBuilder.DefineDynamicModule
</a>.
79 <td width=
"30%"><a href=
"types/OpCodes.html">class OpCodes
</a></td>
81 Provides field representations of the Microsoft
82 Intermediate Language (MSIL) instructions for emission by the
84 class members (such as
91 <td width=
"30%"><a href=
"types/ParameterBuilder.html">class ParameterBuilder
</a></td>
92 <td width=
"60%"> Creates or associates parameter information.
96 <td width=
"30%"><a href=
"types/PropertyBuilder.html">class PropertyBuilder
</a></td>
97 <td width=
"60%"> Defines the properties for a type.
101 <td width=
"30%"><a href=
"types/SignatureHelper.html">class SignatureHelper
</a></td>
102 <td width=
"60%"> Provides methods for building signatures.
106 <td width=
"30%"><a href=
"types/TypeBuilder.html">class TypeBuilder
</a></td>
107 <td width=
"60%"> Defines and creates new instances of classes during runtime.
111 <td width=
"30%"><a href=
"types/UnmanagedMarshal.html">class UnmanagedMarshal
</a></td>
112 <td width=
"60%"> Represents the class that describes how to marshal a field from managed to unmanaged code. This class cannot be inherited.
117 </dl><br><b>Structures
</b><dl>
119 <table border=
"1" width=
"90%" style=
"border-collapse: collapse">
121 <th bgcolor=
"#C0C0C0">Structure
</th>
122 <th bgcolor=
"#C0C0C0">
127 <td width=
"30%"><a href=
"types/EventToken.html">structure EventToken
</a></td>
128 <td width=
"60%"> Represents the returned by the metadata to represent an event.
132 <td width=
"30%"><a href=
"types/FieldToken.html">structure FieldToken
</a></td>
133 <td width=
"60%"> The class is an object representation of a token that represents a field.
137 <td width=
"30%"><a href=
"types/Label.html">structure Label
</a></td>
138 <td width=
"60%"> Represents a label in the instruction stream. is used in conjunction with the
<a href=
"../System.Reflection.Emit/types/ILGenerator.html">ILGenerator
</a> class.
142 <td width=
"30%"><a href=
"types/MethodToken.html">structure MethodToken
</a></td>
143 <td width=
"60%"> The class is an object representation of a token that represents a method.
147 <td width=
"30%"><a href=
"types/OpCode.html">structure OpCode
</a></td>
148 <td width=
"60%"> Describes a Microsoft intermediate language (MSIL) instruction.
152 <td width=
"30%"><a href=
"types/ParameterToken.html">structure ParameterToken
</a></td>
153 <td width=
"60%"> The class is an opaque representation of the token returned by the metadata to represent a parameter.
157 <td width=
"30%"><a href=
"types/PropertyToken.html">structure PropertyToken
</a></td>
158 <td width=
"60%"> The class is an opaque representation of the returned by the metadata to represent a property.
162 <td width=
"30%"><a href=
"types/SignatureToken.html">structure SignatureToken
</a></td>
163 <td width=
"60%"> Represents the returned by the metadata to represent a signature.
167 <td width=
"30%"><a href=
"types/StringToken.html">structure StringToken
</a></td>
168 <td width=
"60%"> Represents a token that represents a string.
172 <td width=
"30%"><a href=
"types/TypeToken.html">structure TypeToken
</a></td>
173 <td width=
"60%"> Represents the returned by the metadata to represent a type.
178 </dl><br><b>Enumerations
</b><dl>
180 <table border=
"1" width=
"90%" style=
"border-collapse: collapse">
182 <th bgcolor=
"#C0C0C0">Enumeration
</th>
183 <th bgcolor=
"#C0C0C0">
188 <td width=
"30%"><a href=
"types/AssemblyBuilderAccess.html">enumeration AssemblyBuilderAccess
</a></td>
189 <td width=
"60%"> Defines the access modes for a dynamic assembly.
193 <td width=
"30%"><a href=
"types/FlowControl.html">enumeration FlowControl
</a></td>
194 <td width=
"60%"> Describes how an instruction alters the flow of control.
198 <td width=
"30%"><a href=
"types/OpCodeType.html">enumeration OpCodeType
</a></td>
199 <td width=
"60%"> Describes the types of the Microsoft intermediate language (MSIL) instructions.
203 <td width=
"30%"><a href=
"types/OperandType.html">enumeration OperandType
</a></td>
204 <td width=
"60%"> Describes the operand type of Microsoft intermediate language (MSIL) instruction.
208 <td width=
"30%"><a href=
"types/PackingSize.html">enumeration PackingSize
</a></td>
209 <td width=
"60%"> Specifies the packing size of a type.
213 <td width=
"30%"><a href=
"types/PEFileKinds.html">enumeration PEFileKinds
</a></td>
214 <td width=
"60%"> Specifies the type of the portable executable (PE) file.
218 <td width=
"30%"><a href=
"types/StackBehaviour.html">enumeration StackBehaviour
</a></td>
220 Describes how values are pushed onto a stack
221 or popped off a stack.
227 </dl><br><b>Namepace hierarchy
</b><br><ul class=
"none">
228 <li><a href=
"../System/types/Object.html">System.Object
</a></li>
230 <li><a href=
"../System.Reflection/types/Assembly.html">System.Reflection.Assembly
</a></li>
232 <li><a href=
"../System.Reflection.Emit/types/AssemblyBuilder.html">System.Reflection.Emit.AssemblyBuilder
</a></li>
236 <li><a href=
"../System.Reflection.Emit/types/CustomAttributeBuilder.html">System.Reflection.Emit.CustomAttributeBuilder
</a></li>
239 <li><a href=
"../System.Reflection.Emit/types/EventBuilder.html">System.Reflection.Emit.EventBuilder
</a></li>
242 <li><a href=
"../System.Reflection.Emit/types/ILGenerator.html">System.Reflection.Emit.ILGenerator
</a></li>
245 <li><a href=
"../System.Reflection.Emit/types/LocalBuilder.html">System.Reflection.Emit.LocalBuilder
</a></li>
248 <li><a href=
"../System.Reflection.Emit/types/MethodRental.html">System.Reflection.Emit.MethodRental
</a></li>
251 <li><a href=
"../System.Reflection.Emit/types/OpCodes.html">System.Reflection.Emit.OpCodes
</a></li>
254 <li><a href=
"../System.Reflection.Emit/types/ParameterBuilder.html">System.Reflection.Emit.ParameterBuilder
</a></li>
257 <li><a href=
"../System.Reflection.Emit/types/SignatureHelper.html">System.Reflection.Emit.SignatureHelper
</a></li>
260 <li><a href=
"../System.Reflection.Emit/types/UnmanagedMarshal.html">System.Reflection.Emit.UnmanagedMarshal
</a></li>
263 <li><a href=
"../System.Reflection/types/MemberInfo.html">System.Reflection.MemberInfo
</a></li>
265 <li><a href=
"../System.Reflection/types/FieldInfo.html">System.Reflection.FieldInfo
</a></li>
267 <li><a href=
"../System.Reflection.Emit/types/FieldBuilder.html">System.Reflection.Emit.FieldBuilder
</a></li>
271 <li><a href=
"../System.Reflection/types/MethodBase.html">System.Reflection.MethodBase
</a></li>
273 <li><a href=
"../System.Reflection/types/ConstructorInfo.html">System.Reflection.ConstructorInfo
</a></li>
275 <li><a href=
"../System.Reflection.Emit/types/ConstructorBuilder.html">System.Reflection.Emit.ConstructorBuilder
</a></li>
279 <li><a href=
"../System.Reflection/types/MethodInfo.html">System.Reflection.MethodInfo
</a></li>
281 <li><a href=
"../System.Reflection.Emit/types/MethodBuilder.html">System.Reflection.Emit.MethodBuilder
</a></li>
286 <li><a href=
"../System.Reflection/types/PropertyInfo.html">System.Reflection.PropertyInfo
</a></li>
288 <li><a href=
"../System.Reflection.Emit/types/PropertyBuilder.html">System.Reflection.Emit.PropertyBuilder
</a></li>
292 <li><a href=
"../System/types/Type.html">System.Type
</a></li>
294 <li><a href=
"../System.Reflection.Emit/types/EnumBuilder.html">System.Reflection.Emit.EnumBuilder
</a></li>
297 <li><a href=
"../System.Reflection.Emit/types/TypeBuilder.html">System.Reflection.Emit.TypeBuilder
</a></li>
302 <li><a href=
"../System.Reflection/types/Module.html">System.Reflection.Module
</a></li>
304 <li><a href=
"../System.Reflection.Emit/types/ModuleBuilder.html">System.Reflection.Emit.ModuleBuilder
</a></li>
308 <li><a href=
"../System/types/ValueType.html">System.ValueType
</a></li>
310 <li><a href=
"../System/types/Enum.html">System.Enum
</a></li>
312 <li><a href=
"../System.Reflection.Emit/types/AssemblyBuilderAccess.html">System.Reflection.Emit.AssemblyBuilderAccess
</a></li>
315 <li><a href=
"../System.Reflection.Emit/types/FlowControl.html">System.Reflection.Emit.FlowControl
</a></li>
318 <li><a href=
"../System.Reflection.Emit/types/OpCodeType.html">System.Reflection.Emit.OpCodeType
</a></li>
321 <li><a href=
"../System.Reflection.Emit/types/OperandType.html">System.Reflection.Emit.OperandType
</a></li>
324 <li><a href=
"../System.Reflection.Emit/types/PackingSize.html">System.Reflection.Emit.PackingSize
</a></li>
327 <li><a href=
"../System.Reflection.Emit/types/PEFileKinds.html">System.Reflection.Emit.PEFileKinds
</a></li>
330 <li><a href=
"../System.Reflection.Emit/types/StackBehaviour.html">System.Reflection.Emit.StackBehaviour
</a></li>
334 <li><a href=
"../System.Reflection.Emit/types/EventToken.html">System.Reflection.Emit.EventToken
</a></li>
337 <li><a href=
"../System.Reflection.Emit/types/FieldToken.html">System.Reflection.Emit.FieldToken
</a></li>
340 <li><a href=
"../System.Reflection.Emit/types/Label.html">System.Reflection.Emit.Label
</a></li>
343 <li><a href=
"../System.Reflection.Emit/types/MethodToken.html">System.Reflection.Emit.MethodToken
</a></li>
346 <li><a href=
"../System.Reflection.Emit/types/OpCode.html">System.Reflection.Emit.OpCode
</a></li>
349 <li><a href=
"../System.Reflection.Emit/types/ParameterToken.html">System.Reflection.Emit.ParameterToken
</a></li>
352 <li><a href=
"../System.Reflection.Emit/types/PropertyToken.html">System.Reflection.Emit.PropertyToken
</a></li>
355 <li><a href=
"../System.Reflection.Emit/types/SignatureToken.html">System.Reflection.Emit.SignatureToken
</a></li>
358 <li><a href=
"../System.Reflection.Emit/types/StringToken.html">System.Reflection.Emit.StringToken
</a></li>
361 <li><a href=
"../System.Reflection.Emit/types/TypeToken.html">System.Reflection.Emit.TypeToken
</a></li>
364 </ul><br><i><a href=
"../documentation_license.txt">
365 Copyright (c)
2002 Microsoft Corporation. All rights reserved.